// components/navigation-bar/index.js
Component({
  /**
   * 默认组件是隔离的，外部使用组件，不能够直接拿到组件的样式类去修改组件内部结构的样式
   *
   * 方式1如果要打破隔离，需要配置 addGlobalClass:true
   */
  options: {
    // addGlobalClass: true,
    // 开启多个插槽支持
    multipleSlots: true,
  },

  /**
   * 方式2
   */
  externalClasses: ["custom-class", "custom-title"],

  // -----------------组件生命周期钩子函数---------------------
  lifetimes: {
    created() {
      // 组件被创建完毕时执行，一般在此处添加一些自定义属性
      this.author = "勒布朗";
      this.desc = "一个组件";
      // console.log("created()---");
      // console.log(this);
    },
    attached() {
      // 在组件实例进入页面节点树时执行，多数业务都在此操作，比如发请求拿数据
      console.log("attached()---");
      // setTimeout(() => {
      //   this.setData({
      //     msg: "风很大！",
      //   });
      // }, 2000);
      // 获取状态栏高度
      const { statusBarHeight } = wx.getWindowInfo();
      this.setData({
        statusBarHeight,
      });
    },
    detached() {
      // 组件实例从页面节点树移除时执行
      console.log("detached()---");
    },
  },

  /**
   * 组件的属性列表
   */
  properties: {
    back: {
      type: Boolean,
      value: false,
    },
    delta: {
      type: Number,
      value: 1,
    },
  },

  /**
   * 组件的初始数据
   */
  data: {
    msg: "你好啊",
    statusBarHeight: 0,
  },

  /**
   * 组件的方法列表
   */
  methods: {
    goBack() {
      wx.navigateBack({
        delta: this.data.delta,
      });
    },
  },
});
